/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package mx.unam.fciencias.actividadesculturales.entidades.db;

import java.io.Serializable;
import java.util.List;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.ManyToMany;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;

/**
 * Clase que implementa los atributos de la entidad espacio.
 * @author lumartin
 */
@Entity
@Table(schema = "cultura")
public class Espacio implements Serializable, CatalogoInterface {

    @Id @SequenceGenerator(name = "espacio_id_seq",
            sequenceName = "espacio_id_seq")
    @GeneratedValue(generator = "espacio_id_seq",
        strategy = GenerationType.AUTO)
    private long id_espacio;
    @Column(length = 512, nullable = false)
    private String nomb_esp;
    private String capacidad;
    @Column(length = 512, nullable = false)
    private String ubicacion;
    @ManyToMany(mappedBy="espacios", fetch = FetchType.EAGER)
    private List<Actividad> actividades;


    public Espacio() { }

    public String getCapacidad() {
        return capacidad;
    }

    public void setCapacidad(String capacidad) {
        this.capacidad = capacidad;
    }

    public String getNomb_esp() {
        return nomb_esp;
    }

    public void setNomb_esp(String nomb_esp) {
        this.nomb_esp = nomb_esp;
    }

    public String getUbicacion() {
        return ubicacion;
    }

    public void setUbicacion(String ubicacion) {
        this.ubicacion = ubicacion;
    }

    public List<Actividad> getActividades() {
        return actividades;
    }

    public void setActividades(List<Actividad> actividades) {
        this.actividades = actividades;
    }

    @Override
    public long getId() {
        return id_espacio;
    }

    @Override
    public String getNombre() {
        return nomb_esp;
    }


}
